Copyright: Copyright © 1994, Matthew Woolsey


Contents
HEXpert for Windows Contents

Overview
Brief description of the program and its use.

Menus
Descriptions of the menu bar and menu items.

Keyboard
List of keyboard commands and their use.

Main Edit Window
Description of the main window.

Format Windows
Description of the numeric format windows.

Status line
Description of items on the status line.


Export ASCII Dialog Box

The Export ASCII dialog box allows the user to specify the criteria for exporting a data array as an ASCII file, with the data values arranged in columns.

Export ASCII Dialog Box

The offset is the offset into the file of the start of the data array.  Use the radio buttons to the right to specify the format of the offset, either in hex or decimal.  Note that the offset will be filled in by default with the current cursor offset in the file.

The count is the number of data elements (not bytes) to be exported.  Use the radio buttons to the right to specify the format of the count, either in hex or decimal.

The skip is the number of bytes between each data element.  This is useful if the data is interleaved with other information.  If the array elements are consecutive, the skip value would be zero.  Use the radio buttons to the right to specify the format of the skip, either in hex or decimal.

The format options specify the data type of the data elements.

The Export index check box, if selected, will preclude each data item in the ASCII file with its index number, starting with zero.  If the Add offset check box is selected, the indices will be the offset of each data element.

The Delimiter options adds the selected delimiter between columns.  For a single column export, this is not used.  Multiple column exports are possible by specifying a previous export file when the file name is requested.  The Export File dialog box will be displayed, allowing several options to be chosen.  Choosing Append Side-by-Side will create an ASCII file with the new data column appended to the right of the previous column(s).


Goto Dialog Box

The goto dialog box allows the user to enter an offset into the file in either hexadecimal or decimal format.

Offset Base - Select the radio button next to the appropriate format for the offset which was entered.

Mode - Select the mode for the Goto.  Absolute means that the offset is from the beginning of the file.  Relative means that the offset is from the current cursor position.


Search Dialog Box

The search dialog box allows the user to enter text or numbers to be searched for within the file.

There are several groups of radio buttons which affect the type of search to be performed. These are:

Scope - Currently only a global search is allowed.  Selection of text is planned for a future version.

Direction - This selects which direction to perform the search from the cursor (or from the beginning or end of the file if Origin is set to Entire Scope).

Origin - This selects where to start the search, either from the cursor, or over the entire scope of the search.

Format - Select the format ,which the text you entered represents.

ASCII Case Sensitive - The box, when checked will do a case-sensitive search, when searching with an ASCII format.


Replace Dialog Box

The replace dialog box allows the user to enter text or numbers to be searched for within the file, and replaced with new text or numbers.

There are several groups of radio buttons which affect the type of search & replace to be performed. These are:

Scope - Currently only a global search is allowed.  Selection of text is planned for a future version.

Direction - This selects which direction to perform the search from the cursor (or from the beginning or end of the file if Origin is set to Entire Scope).

Origin - This selects where to start the search, either from the cursor, or over the entire scope of the search.

Format - Select the format ,which the text you entered represents.

ASCII Case Sensitive - The box, when checked will do a case-sensitive search, when searching with an ASCII format.

Prompt to Replace - When this box is checked, the program will ask the user to verify replacing each instance found.


Format Windows

Sample format windows

The format window displays the data at the current cursor location in eight different numeric formats.  The numeric value at the current cursor location can also be modified by selecting the desired format window and editing the current value or entering a new value.

The eight formats are:

S8
U8
S16
U16
S32
U32
FP32
FP64


S8
Signed 8-bit integer


U8
Unsigned 8-bit integer


S16
Signed 16-bit integer


U16
Unsigned 16-bit integer


S32
Signed 32-bit integer


U32
Unsigned 32-bit integer


FP32
32-bit floating point


FP64
64-bit floating point


OEM Font
Selects the OEM font, which consists of the line draw characters, boxes, Greek letters, etc.


Decimal Offset Display
Toggle display of offsets in decimal format.


Options
Options Menu

Hexadecimal - This selects hexadecimal as the number base for the main window display.  This is the default setting.

Octal - This selects octal as the number base for the main window display.  All offsets, searching and editting will utilize octal in place of hex.

Binary - This selects binary as the number base for the main window display.  All offsets will still be displayed in hex.

Decimal Offset Display - Displays the cursor position and offsets in the first column as Decimal values rather than Hexadecimal, Octal, or Binary.

Fixed Length - Selecting the option toggles between FIXED length file mode and variable length file mode.  A check mark next to this option indicates that FIXED length mode is selected.

Byte Swapping - Selecting this option toggles between byte swapping (Little Endian) and non-byte swapping (Big Endian) modes.  In byte swapping mode (PC mode), numbers are stored in memory with the bytes in reverse order.  For example, the number 4669 (1234 hex) is stored in memory as 34 12 hex.  In a non-byte swapping mode, numbers are stored with their bytes in normal order.  For the above example, the number would be stored as 12 34 hex.

OEM Font - Selects the machine dependent font (IBM-PC character set).  The extended characters consist of the line draw characters, boxes, Greek letters, etc.

ANSI Font - Selects the ANSI standard character set.  The extended characters include the special characters used in many non-English languages.


Byte Swapping
Toggles between Byte Swapping (Little Endian) and non-Byte Swapping (Big Endian) modes.


Main Edit Window

Sample Main Edit Window

The main edit window has three columns of information. The leftmost column shows the offset for each line of data. The center column displays the data in hexadecimal format.  Alternatively, octal or binary formats can be displayed.  The right column displays the ASCII equivalent of the data in the IBM-PC character set. In HEX mode, typing the characters 0-9,A-F will enter new hex values, overwriting the data at the current cursor location.  For octal, enter characters 0-7.  For binary, enter characters 0 & 1.  The corresponding ASCII character will also be updated. Each hex character must be entered as pairs of digits. In ASCII mode, any character typed overwrites the ASCII character at the current cursor location. The corresponding hex value will also be updated.


Open
Open a new file.


Save
Save the current file, using the current file name.


Save As
Save the current file, prompting for a file name.


Exit
Exit the program.


Insert
Insert a byte at the current cursor location.


Delete
Delete a byte at the current cursor location.


Toggle Edit Mode
Toggle between hex and ASCII input mode.


FIXED
Toggle between fixed length and variable length file mode.


GOTO
Go to a given offset in the file.


Search
Search for data.


Search & Replace
Search for data and replace with new data.


Search Next
Find/Replace next item.


RIGHT1
Move cursor right one byte.


LEFT1
Move cursor left one byte.


UP
Move cursor up one line.


DOWN
Move cursor down one line.


TAB1
Move to first edit window.


BACK1
Move cursor left one byte.


PGUP
Move up one page in the file.


PGDN
Move down one page in the file.


Beginning of File
Move to beginning of file.


End of File
Move to end of file.


RIGHT2
Move cursor right one character.


LEFT2
Move cursor left one character.


TAB2
Move to next edit field.


BACK2
Delete character to left.


ENTER
Replace hex data with modified numeric value from edit field.


ESCAPE
Return to main window.


Menus

File
Commands pertaining to loading or saving files.

Edit
Commands for editing the file.

Options

Selections which affect the operation of the program.

Search
Commands for searching or searching and replacing data.

Help
Commands for further information about the program.


File Menu

Open - Opens a file for editing.  A dialog box will be displayed, allowing the user to select the drive, path, and file name.  Upon startup, this dialog box will be displayed automatically, if no file is specified on the command line.

Save - Saves the current file using the current drive, path, and file name.  If the user attempts to exit the program without saving a modified file, a dialog box will be displayed, giving the user a chance to save the file.

Save As - This will display a dialog box allowing the user to select a new drive, path, or file name, and saves the current file using the new designation.  The current drive, path, and file name is changed.

Export binary to ASCII - Allows the user to export data from the binary file to an ASCII file.  The export function will convert the data from one of the numeric formats to ASCII.  The Export ASCII Export ASCII dialog box dialog box will be displayed allowing the user to specify how the data will be exported.  This is handy for exporting arrays of numbers.

Exit - Exits the program.  If the current file is modified, a dialog box will be displayed, giving the user a chance to save the file.


Edit Menu

Insert - Selecting this option or pressing the Insert key will insert a single byte with value 00 hex at the cursor location.  Variable length file mode must be selected.

Delete - Selecting this option or pressing the Delete key will delete a single byte at the cursor location.  Variable length file mode must be selected.

Toggle Edit Mode - This toggles the edit mode between HEX and ASCII.  With the focus set on the main edit window, characters typed on the keyboard will replace text at the current cursor location.

Block Fill - This will display the Block Fill Dialog Box, allowing the user to specify a region of the data to fill with a given value.

Block Delete - This will display the Block Delete Dialog Box allowing the user to specify a region of the data to delete.


Export File Dialog Box

The export file dialog box is displayed when the selected file for ASCII export already exists.  It present options to allow appending or replacing the data.

Append side-by-side will add the exported data column to the right of the previous data column(s).

Append below will add the data at the end of the file, extending the existing column(s) in the file.

Replace will delete the old data and replace it with the new data column.

Cancel will stop the export operation.


Search Menu

Search - This will display a search dialog box, which allows the user to enter text to be found within the file.

Search & Replace - This will display a search & replace dialog box, which allows the user to enter text to be found, and new text to replace the found text within the file.

Search Next - Selecting this will repeat the last search or search & replace action.

Goto Offset - This option opens the goto dialog box, which allows the user to go to a given offset in either hexadecimal or decimal.


Overview

HEXpert is a powerful tool that allows the user to view and edit binary data in both hex (or octal or binary) and ASCII formats, as well as eight different numeric formats, including signed and unsigned integers and floating point.  Instead of looking for the hex equivalent of a floating point number, the user can simply view the data in all formats simultaneously.  HEXpert allows editing, searching, or replacing of the data in any of these formats.  Additionally, HEXpert can insert and delete data.  Files can be as large as 16 MBytes.  HEXpert runs under Microsoft Windows 3.1.

The main window consists of three regions.  The top area of the window is split into three columns.  The first column is the offset in hex of each line of data.  The second column is the hexadecimal representation of the data, 16 bytes per line.  The third column displays the ASCII equivalent of the data.  The middle region of the window contains the format windows.  The format windows display the data, currently pointed to by the cursor, in various integer and floating point formats.  The user can also change the data at the current location by editing one of the format windows, in integer or floating point.  The bottom region of the window shows the current file status.  The status consists of the current cursor location, the current key entry mode (HEX or ASCII), whether the file has been modified or not, the file size, and whether the file is FIXED length or not.  Alternately, HEXpert can operate in Octal or Binary modes, rather than in Hex.


Help Menu

Contents - Displays the help contents.

About - Displays a dialog box showing the program name, program version, author, and copyright.


Status Line

Sample status line

The status line consists of the current cursor location (hex), the current key entry mode (HEX or ASCII), whether the file has been modified or not, the file size, and whether the file is FIXED length or not.


Export binary array data to an ASCII file
Export binary array data to an ASCII file.


Formats

S8	Signed 8-bit integer.

U8	Unsigned 8-bit integer.

S16	Signed 16-bit integer.

U16	Unsigned 16-bit integer.

S32	Signed 32-bit integer.

U32	Unsigned 32-bit integer.

FP32	32-bit floating point.

FP64	64-bit floating point.


Keyboard Reference

File

Open	F3

Save	F2

SaveAs

Export Binary to ASCII	Alt+E

Exit	Alt+X

Edit

Insert	INS

Delete	DEL

Toggle Edit Mode	Alt+M

Block Fill	Alt+K

Block Delete	Alt+DEL

Options

Hexadecimal	Alt+H

Octal	Alt+O

Binary	Alt+B

Decimal Offset Display	Alt+0

Fixed Length	Alt+L

Byte Swapping	Alt+W

OEM Font	Alt+1

ANSI Font	Alt+2

Search

Search	Alt+S

Search Replace	Alt+R

Search Next	Alt+N

Goto Offset	Alt+G

Main Edit Window

Right	→

Left	←

Up	↑

Down	↓

Tab	Tab

Backspace	←

Page Up	PgUp

Page Down	PgDn

Begin File	Ctrl+PgUp or Ctrl+Home

End File	Ctrl+PgDn or Ctrl+End

Format Windows

Right	→

Left	←

Tab	Tab

Backspace	←

Enter	↵

Escape	ESC


Hexadecimal
Use hexadecimal for Main Window data display.


Octal
Use Octal for Main Window data display


Binary
Use Binary for Main Window data display.


ANSI Font
Selects the ANSI font, which includes special characters used in many non-English languages.


Block Fill Dialog Box

To fill a block of data with a given value, specify the fill parameters in the dialog shown below, and press OK:

The Offset specifies the starting point for the fill.  When the dialog box appears, the offset will contain the current cursor position.  You can also select the numeric format for the offset.

The Count specifies how many times to perform the fill (not bytes).  Example:  if you specify a count of 100 decimal, select 3.14159 for the fill text, and select the FP32 format (4 bytes), the block will be filled with 100 FP32 values, or 400 bytes (the value 3.14159 will be repeated 100 times).  You can also select the numeric format for the count.  Note: if you would rather specify a second offset instead of a count, precede the count with the "@" symbol.  HEXpert will take the value as a second offset and calculate the count for you.

The Fill Text is the data you wish to fill the block with.

The Format selects one of the data type formats for the fill text.


Block Fill   Alt+K
Fills a block of data with the specified value(s).


Block Delete Dialog Box

To delete a block of data, specify the deletion parameters in the dialog shown below, and press OK:

The Offset specifies the starting point for the delete.  When the dialog box appears, the offset will contain the current cursor position.  You can also select the numeric format for the offset.

The Count specifies how many times to perform the delete (bytes).  You can also select the numeric format for the count.  Note: if you would rather specify a second offset instead of a count, precede the count with the "@" symbol.  HEXpert will take the value as a second offset and calculate the count for you.

Note: The file must not be fixed length to perform a delete, because this will change the size of the file


Block Delete   Alt+DEL
Deletes a block of data from the file.